package com.panda.mall.common.mallCoupon.entity;

import javax.validation.constraints.Size;
import javax.validation.constraints.NotNull;

import java.io.Serializable;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.panda.mall.common.base.BaseEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import org.hibernate.validator.constraints.Length;

/**
* 首页优惠广告表
* mall_coupon_home
*/
@EqualsAndHashCode(callSuper = true)
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName("mall_coupon_home")
public class MallCouponHome extends BaseEntity implements Serializable {

    /**
    * 广告id
    */
    @NotNull(message="[广告id]不能为空")
    @ApiModelProperty("广告id")
    private Long id;
    /**
    * 名称
    */
    @Size(max= 40,message="编码长度不能超过40")
    @ApiModelProperty("名称")
    @Length(max= 40,message="编码长度不能超过40")
    private String name;
    /**
    * 图片链接
    */
    @Size(max= 500,message="编码长度不能超过500")
    @ApiModelProperty("图片链接")
    @Length(max= 500,message="编码长度不能超过500")
    private String img;
    /**
    * 开始时间
    */
    @ApiModelProperty("开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date startTime;
    /**
    * 结束时间
    */
    @ApiModelProperty("结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date endTime;
    /**
    * 点击数
    */
    @ApiModelProperty("点击数")
    private Integer clickCount;
    /**
    * 广告链接
    */
    @Size(max= 500,message="编码长度不能超过500")
    @ApiModelProperty("广告链接")
    @Length(max= 500,message="编码长度不能超过500")
    private String url;
    /**
    * 备注
    */
    @Size(max= 500,message="编码长度不能超过500")
    @ApiModelProperty("备注")
    @Length(max= 500,message="编码长度不能超过500")
    private String remarks;
    /**
    * 排序号
    */
    @ApiModelProperty("排序号")
    private Integer sort;
    /**
    * 发布者id
    */
    @ApiModelProperty("发布者id")
    private Long publishId;
    /**
    * 审核者id
    */
    @ApiModelProperty("审核者id")
    private Long checkId;
}
